.\"
.\"	$OpenBSD: SSL_set_bio.3,v 1.2 2014/12/02 14:11:01 jmc Exp $
.\"
.Dd $Mdocdate: December 2 2014 $
.Dt SSL_SET_BIO 3
.Os
.Sh NAME
.Nm SSL_set_bio
.Nd connect the SSL object with a BIO
.Sh SYNOPSIS
.In openssl/ssl.h
.Ft void
.Fn SSL_set_bio "SSL *ssl" "BIO *rbio" "BIO *wbio"
.Sh DESCRIPTION
.Fn SSL_set_bio
connects the
.Vt BIO Ns
s
.Fa rbio
and
.Fa wbio
for the read and write operations of the TLS/SSL (encrypted) side of
.Fa ssl .
.Pp
The SSL engine inherits the behaviour of
.Fa rbio
and
.Fa wbio ,
respectively.
If a
.Vt BIO
is non-blocking, the
.Fa ssl
will also have non-blocking behaviour.
.Pp
If there was already a
.Vt BIO
connected to
.Fa ssl ,
.Xr BIO_free 3
will be called (for both the reading and writing side, if different).
.Sh RETURN VALUES
.Fn SSL_set_bio
cannot fail.
.Sh SEE ALSO
.Xr bio 3 ,
.Xr ssl 3 ,
.Xr SSL_accept 3 ,
.Xr SSL_connect 3 ,
.Xr SSL_get_rbio 3 ,
.Xr SSL_shutdown 3
